﻿using System;
using Delta_util.Estaticos;
using Delta_entidad.Base;
using Delta_entidad.Atributos;
namespace SitioINewThreadSoft.Entidades
{
    [Serializable]
    [AttEntidad("cat_persona", "id_persona", false, 3, true, true, Enumerados.TIPO_OPERACION_GRID.INSERTAR, Enumerados.TIPO_OPERACION_GRID.ACTUALIZAR, Enumerados.TIPO_OPERACION_GRID.ELIMINAR, Enumerados.TIPO_OPERACION_GRID.FILTRO)]
    public class cat_persona_filtro : TipoBase, ITipo
    {
        private System.Int32 _id_persona;
        private System.String _nombre;
        private System.String _apellidos;
        private System.DateTime? _fecha_nacimiento;
        private System.Byte? _edad;
        private System.String _sexo;
        private System.String _direccion;

        [AttrParametro(System.Data.SqlDbType.Int, 10, null, System.Data.ParameterDirection.Input, Enumerados.TIPO_QUERY.INSERTAR, Enumerados.TIPO_QUERY.OBTENER, Enumerados.TIPO_QUERY.ELIMINAR)]
        [AttPropiedad("Clave de persona", true, false, false, false, Enumerados.TIPO_EDITOR.TEXBOX, null, 0)]
        public System.Int32 id_persona
        {
            get { return _id_persona; }
            set { _id_persona = value; }
        }

        [AttrParametro(System.Data.SqlDbType.VarChar, 50, null, System.Data.ParameterDirection.Input, Enumerados.TIPO_QUERY.INSERTAR)]
        [AttPropiedad("Nombre", true, false, true, true, Enumerados.TIPO_EDITOR.TEXBOX, null, 1)]
        [AttFiltro("FiltroNombre", "=", false)]
        public System.String nombre
        {
            get { return _nombre; }
            set { _nombre = value; }
        }

        [AttrParametro(System.Data.SqlDbType.VarChar, 100, null, System.Data.ParameterDirection.Input, Enumerados.TIPO_QUERY.INSERTAR)]
        [AttPropiedad("Apellidos", true, false, false, true, Enumerados.TIPO_EDITOR.TEXBOX, null, 2)]
        public System.String apellidos
        {
            get { return _apellidos; }
            set { _apellidos = value; }
        }

        [AttrParametro(System.Data.SqlDbType.DateTime, 23, null, System.Data.ParameterDirection.Input, Enumerados.TIPO_QUERY.INSERTAR)]
        [AttPropiedad("Fecha de nacimiento", true, false, false, true, Enumerados.TIPO_EDITOR.TEXBOX, "Formato de la fecha es dd/mm/yyyy", 3)]
        public System.DateTime? fecha_nacimiento
        {
            get { return _fecha_nacimiento; }
            set { _fecha_nacimiento = value; }
        }

        [AttrParametro(System.Data.SqlDbType.TinyInt, 3, null, System.Data.ParameterDirection.Input, Enumerados.TIPO_QUERY.INSERTAR)]
        [AttPropiedad("Edad", true, false, false, true, Enumerados.TIPO_EDITOR.TEXBOX, null, 4)]
        public System.Byte? edad
        {
            get { return _edad; }
            set { _edad = value; }
        }

        [AttrParametro(System.Data.SqlDbType.VarChar, 20, null, System.Data.ParameterDirection.Input, Enumerados.TIPO_QUERY.INSERTAR)]
        [AttPropiedad("Sexo", true, false, false, true, Enumerados.TIPO_EDITOR.TEXBOX, null, 5)]
        [AttFiltro("FiltroSexo", "=", true)]
        public System.String sexo
        {
            get { return _sexo; }
            set { _sexo = value; }
        }

        [AttrParametro(System.Data.SqlDbType.VarChar, 4000, null, System.Data.ParameterDirection.Input, Enumerados.TIPO_QUERY.INSERTAR)]
        [AttPropiedad("Dirección", true, false, false, true, Enumerados.TIPO_EDITOR.TEXBOX, null, 6)]
        public System.String direccion
        {
            get { return _direccion; }
            set { _direccion = value; }
        }


    }
}
